<!DOCTYPE html>
<!--
     SPDX-License-Identifier: CC-BY-SA-4.0
     SPDX-FileCopyrightText: 2020 seL4 Project a Series of LF Projects, LLC.
-->
<!-- Page last generated 2025-02-20 03:16:15 +0000 -->
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>seL4 11.0.x-compatible | seL4 docs</title>

    <!-- Our stylesheet and theme stylesheet.  Contains bootstrap. -->
    <link rel="stylesheet" href="/assets/css/style.css" type="text/css">
    <!-- Font awesome -->
    <link href="https://use.fontawesome.com/releases/v5.0.8/css/all.css" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css2?family=Roboto&display=swap" rel="stylesheet">
    <!-- Pygments syntax highlighting  -->
    <link rel="stylesheet" href="/assets/css/highlighting/trac.css" type="text/css">
    <link rel="icon" type="image/x-icon" href="/assets/favicon.ico"><script defer data-domain="docs.sel4.systems"
	    src="https://analytics.sel4.systems/js/script.js"></script></head>

  <body class="container-fluid">

    



<header>
  <ul class="row menu">
    <li class="col-xs-12 col-md-2" >
            <a href="https://sel4.systems" class="skip-icon">
              <img class="img-responsive" src="/assets/logo-text-white.svg" alt="seL4 logo" />
            </a>
    </li>
    <li class="col-xs-12 col-md-10 menu">
      <nav aria-label="Banner links">
        <h2><a href="/Resources" />Resources</h2>
        <h2><a href="/processes" />Contributing</a></h2>
        <h2><a href="/projects" />Projects</h2>
        <h2><a href="/Tutorials" />Tutorials</h2>
        <iframe title="DuckDuckGo search bar" src="https://duckduckgo.com/search.html?site=docs.sel4.systems&prefill=Search%20sel4.systems" style="overflow:hidden;margin-bottom:10px; padding:0;height:40px;float:right;border-width: 0px"></iframe>
      </nav>
    </li>
  </ul>
  <div class="clear"></div>
  
<div class="breadcrumbs bootstrap hidden-sm-down">
  <nav class="sel-breadcrumb" aria-label="Breadcrumb" >
    <ol class=" list-unstyled" vocab="http://schema.org/" typeof="BreadcrumbList">
      
      
        

        

        <li class="breadcrumb-item" property="itemListElement" typeof="ListItem">
            <a property="item" typeof="WebPage" href="/">
              <span property="name"><b>seL4 Docs</b></span>
            </a>
            <meta property="position" content="1" />
        </li>
      
        

        

        <li class="breadcrumb-item" property="itemListElement" typeof="ListItem">
            <a property="item" typeof="WebPage" href="/updates/sel4bench">
              <span property="name"><b>sel4bench Recent Updates</b></span>
            </a>
            <meta property="position" content="2" />
        </li>
      
        

        
          <li class="breadcrumb-item" property="itemListElement" typeof="ListItem">
            <span property="name">seL4 11.0.x-compatible</span>
            <meta property="position" content="3" /></li>
          
    </ol>
  </nav>
  <nav class="sel-version" aria-label="Current Versions">
    <ol class="list-unstyled">
      <li class="list-unstyled text-right" style="margin-left:auto; padding:0rem 0rem;">
        Current versions:</li>
      <li class="list-unstyled text-right">
      <a href="/releases/sel4/13.0.0"><b>seL4-13.0.0</b></a></li>
      <li class="list-unstyled text-right">
      <a href="/releases/microkit/1.4.1"><b>microkit-1.4.1</b></a></li>
      <li class="list-unstyled text-right">
      <a href="/releases/camkes/camkes-3.11.0"><b>camkes-3.11.0</b></a></li>
      <li class="list-unstyled text-right">
      <a href="/releases/capdl/0.3.0"><b>capDL-0.3.0</b></a></li>
      </ol>
  </nav>
  <div class='clear'></div>
</div>


</header>

    <main>
      <div class="row">
  <div class="hidden-xs col-sm-4 col-md-3 col-lg-2">
    


<div class="sidebar">
















</div>

  </div>
  <div class="content col-sm-8 col-md-6 col-lg-7 main">
    <h1 id="updates-to-sel4bench-from-sel4-101x-to-110x">Updates to seL4Bench from seL4 10.1.x to 11.0.x</h1>

<h2 id="external">External</h2>

<ul>
  <li>Add new VCPU benchmarks.  This new benchmark app benchmarks the following overheads:
    <ul>
      <li>The overhead of a <code class="language-plaintext highlighter-rouge">HVC</code> privilege escalation from EL1 to EL2.</li>
      <li>The overhead of an <code class="language-plaintext highlighter-rouge">ERET</code> privilege de-escalation from EL2 to EL1.</li>
      <li>The overhead of a <code class="language-plaintext highlighter-rouge">NULL</code> hypercall into the seL4 EL2 kernel.</li>
      <li>The overhead of an <code class="language-plaintext highlighter-rouge">seL4_Call</code> syscall.</li>
      <li>The overhead of an <code class="language-plaintext highlighter-rouge">seL4_Reply</code> syscall.</li>
    </ul>
  </li>
  <li>Add griddle support with <code class="language-plaintext highlighter-rouge">easy-settings.cmake</code> file.</li>
  <li>Force FPU state to only be restored when used.
  This ensures that during benchmarks where the FPU state isn’t being used
  that the FPU state does not get restored. This ensures that context
  switches in benchmarks accurately show the case where FPU restore is not
  performed.</li>
  <li>Allow for platform counters to be enabled in IPC benchmark.</li>
  <li>Update <code class="language-plaintext highlighter-rouge">page_mapping</code> benchmark to remap pages using the changed kernel API.</li>
</ul>

<h2 id="internal">Internal</h2>

<ul>
  <li><code class="language-plaintext highlighter-rouge">sel4bench</code>: make <code class="language-plaintext highlighter-rouge">plat_setup</code> a weak symbol and remove stub functions for each platform</li>
  <li><code class="language-plaintext highlighter-rouge">sel4bench</code>: Add newlines to <code class="language-plaintext highlighter-rouge">printf</code> calls.
  <code class="language-plaintext highlighter-rouge">printf</code> buffering the output makes debugging harder as output becomes
  ordered differently.</li>
  <li>Update usages of <code class="language-plaintext highlighter-rouge">libcpio</code> to match new api.</li>
  <li>Style files.</li>
  <li><code class="language-plaintext highlighter-rouge">smp</code>: use <code class="language-plaintext highlighter-rouge">SEL4BENCH_RESET_CCNT</code>. This is a generic function for achieving what the code was hardcoded to
  armv7 for.</li>
  <li><code class="language-plaintext highlighter-rouge">sel4bench</code>: start looking for untyped at <code class="language-plaintext highlighter-rouge">seL4_MaxUntypedBits</code>.</li>
  <li>Use <code class="language-plaintext highlighter-rouge">sel4runtime</code>.</li>
  <li><code class="language-plaintext highlighter-rouge">libsel4benchsupport</code>: fix child process stack init by ensuring <code class="language-plaintext highlighter-rouge">benchmark_spawn_process</code> leaves the stack top
  intact.</li>
  <li><code class="language-plaintext highlighter-rouge">sel4bench</code>: remove <code class="language-plaintext highlighter-rouge">autoconf.h</code> and global <code class="language-plaintext highlighter-rouge">Configuration</code> library and link configuration libraries explicitly.</li>
  <li>Rename configuration libraries to follow a consistent naming convention.</li>
  <li>Use <code class="language-plaintext highlighter-rouge">sel4rpc</code> library for allocating untypeds.</li>
  <li>Remove <code class="language-plaintext highlighter-rouge">sel4platsupport_timer</code> usages and replace with <code class="language-plaintext highlighter-rouge">ltimer</code> and new <code class="language-plaintext highlighter-rouge">ps_io_irq_t</code> interfaces.</li>
  <li>Rename <code class="language-plaintext highlighter-rouge">CONFIG_KERNEL_RT</code> to <code class="language-plaintext highlighter-rouge">CONFIG_KERNEL_MCS</code>.</li>
  <li>Fix SMP thread checkpointing. This fixes breakage in SMP x86_64 benchmark.</li>
  <li>Refactor buildsystem to keep up with underlying changes.  Try to also make configuration scripts easier to follow.</li>
  <li>Use device tree for binding drivers to devices on Arm.</li>
</ul>


  </div>







  
  
<div class="sidebar-toc hidden-xs hidden-sm col-md-3 col-lg-3">
  
    <ul class="section-nav">
    	<h2> sel4bench </h2> 
        <li>
          
          <a style="" class="" href="/projects/sel4bench/">
            Documentation homepage
          </a>
        </li>






        <li>
          
          <a style="" class="" href="/projects/sel4bench/status.html">
            Status
          </a>
        </li>












    
        <h3>Repositories</h3>
    
        <li>
          <a class="" href="https://github.com/seL4/sel4bench">
            sel4bench
          </a>
        </li>

    
        <li>
          <a class="" href="https://github.com/seL4/sel4bench-manifest">
            sel4bench-manifest
          </a>
        </li>









  







    
        <h3>Recent Updates</h3>
    
        <li>
          <a style=" font-weight: bold; " href="/updates/sel4bench/11.0.x.html">
            seL4 11.0.x-compatible
          </a>
        </li>

    </ul>

</div>


</div>

    </main>
    


<footer class="site-footer">

  <h2 class="footer-heading">seL4 docs</h2>

  <div class="footer-col-wrapper">

    <div class="col-md-2">
      



<ul class="social-media-list">
  <li><a href="https://github.com/sel4"><i class="fab fa-github"></i> <span class="username">sel4</span></a></li><li><a href="https://github.com/sel4proj"><i class="fab fa-github"></i> <span class="username">sel4proj</span></a></li>
</ul>

    </div>

    <div class="col-md-8">
      <ul class="list-unstyled">
        <li>
          This site is for displaying seL4 related documentation.  Pull requests are welcome.
        </li>
        
          <li>
            Site last updated: Fri Feb 7 10:17:38 2025 +1100 ee78c8857c
          </li>
          <li>
          </li>
        
      </ul>
    </div>
    <div class="col-md-2">
<a href="https://github.com/seL4/docs/blob/master/content_collections/_updates/sel4bench/11.0.x.md">View page on GitHub</a>
      <br />
      <a href="https://github.com/seL4/docs/edit/master/content_collections/_updates/sel4bench/11.0.x.md">Edit page on GitHub</a>
      <br />
      <a href="/sitemap">Sitemap</a>
    </div>

  </div>

</footer>

  </body>
</html>
